package com.acme.bankapp.exceptions;

import com.acme.bankapp.domain.bank.Account;

public class OverDraftLimitExceededException extends NotEnoughFundsException {

	private Account accout;
	private double maximumAmountToWithdraw;
	
	
    public double getMaximumAmountToWithdraw() {
		return maximumAmountToWithdraw;
	}

	public OverDraftLimitExceededException(
    		Account account, double amount, String message, Throwable cause) {
        super(amount, message, cause);
        this.accout = account;
    }
	
	public OverDraftLimitExceededException(
    		Account account, double maximumAmountToWithdraw, double amount, String message, Throwable cause) {
        super(amount, message, cause);
        this.accout = account;
        this.maximumAmountToWithdraw = maximumAmountToWithdraw;
    }	

	public OverDraftLimitExceededException(
    		Account account, double maximumAmountToWithdraw, double amount) {
		super(amount);
        this.accout = account;
        this.maximumAmountToWithdraw = maximumAmountToWithdraw;
    }	

	
    public OverDraftLimitExceededException(
    		Account account, double amount, String message) {
        super(amount, message);
        this.accout = account;
    }

    public OverDraftLimitExceededException(Account account,
                    double amount, Throwable cause) {
        super(amount, cause);
        this.accout = account;
    }

    public OverDraftLimitExceededException(
    		Account account, double amount) {
    	super(amount);
    	this.accout = account;
    }

    public Account getAccout() {
            return accout;
    }
}
